home *** CD-ROM | disk | FTP | other *** search
- Copyright (c) Xerox Corporation 1989, 1990. All rights reserved.
-
- These notes correspond to the "5/1/90 May Day PCL (REV 2)" version of PCL.
-
- This version is just Rainy Day PCL with the various patches people have
- mailed out included. Barring unforseen circumstances, this will be the
- last version of PCL. We are now working on the Metaobject Protocol.
-
-
- Please read this entire file carefully. Failure to do so guarantees
- that you will have problems porting your code from the previous release
- of PCL.
-
- You may also be interested in looking at previous versions of the
- notes.text file. These are called xxx-notes.text where xxx is the
- version of the PCL system the file corresponds to. At least the last
- two versions of this file contain useful information for any PCL user.
-
- This version of PCL has been tested at PARC in the following Common
- Lisps:
-
- Symbolics 7.2, 7.4
- Coral 1.3
- Lucid 3.0
- Allegro 3.0.1
-
- These should work, but haven't been tested yet:
-
- TI
- Golden Common Lisp 3.1
- EnvOS Medley
- IBCL (October 15, 1987)
-
- This release of PCL is substantially different from previous releases.
- The architecture of the runtime system (method lookup and slot access)
- is different, and the metaobject protocol is different. Much of the
- code in this release is new or modified from the last release.
-
- When it stabilizes, this release should be much faster for all
- applications especially large ones.
-
- This beta version of the new release includes a number of known
- problems. These include:
-
- * Even less documentation than ever before. I haven't written much of a
- notes file for what is different yet. Please send me comments for what
- to include in this file.
-
- * Some known performance problems in development versions of compilers.
- At the very least, you want to compile PCL itself using the highest
- performance compiler settings you have.
-
-
- === Notes for this release (such as they are) ===
-
- * There is one major incompatible change in this release. In this
- release compiling files with defmethod and defclass forms doesn't, by
- default, affect the running lisp image. The winning part of this is you
- can compile a file without `installing' the class and method definitions
- in the file. The losing part is that because PCL is a portable program,
- it can't both do this and let a class definition and a method which
- specializes to that class appear in the same file.
-
- So, you can't (by default) have:
-
- (defclass foo () ())
- (defmethod bar ((f foo)) 'foo)
-
- in the same file.
-
- But you say you want to do this, almost everyone does. If you want to
- do this just evaluate the following form before after loading PCL but
- before working with it:
-
- (pushnew 'compile pcl::*defclass-times*)
-
- You may also want to do:
-
- (pushnew 'compile pcl::*defmethod-times*)
-
-
- * You probably also want to begin using a precom file for your system.
- Do this by having a file whose only contents is
-
- (pcl::precompile-random-code-segments <your-system-name>)
-
- don't quote <your-system-name>
-
- for example, for the clim system, the precom file has the one line:
-
- (pcl::precompile-random-code-segments clim)
-
- compile this file after loading and running your system for a while.
- load it before loading your compiled system. A future version of this
- feature won't require you to have run your system for a while, it will
- only require that you have loaded it.
-
-
-